package com.zide.ams.domain.vo.result;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;


/**
 * 博客文章对象 ams_article
 * 
 * @author zide
 * @date 2024-04-29
 */
@Data
@Schema(name = "出参 - 博客文章对象 ams_article")
public class AmsArticleResultVO{
    private static final long serialVersionUID = 1L;

    @Schema(description = "主键id")
    private Long id;

    @Schema(description = "用户id")
    private Long userId;

    @Schema(description = "作者名称")
    private String authorName;

    @Schema(description = "作者头像")
    private String authorAvatar;

    @Schema(description = "分类id")
    private Long categoryId;

    @Schema(description = "文章标题")
    private String title;

    @Schema(description = "文章封面地址")
    private String mainImg;

    @Schema(description = "文章简介")
    private String summary;

    @Schema(description = "文章内容 （最多两百字）")
    private String content;

    @Schema(description = "可见范围")
    private Integer showScope;

    @Schema(description = "是否置顶 0否 1是")
    private Integer topStatus;

    @Schema(description = "是否发布 0：下架 1：发布")
    private Integer pushStatus;

    @Schema(description = "是否原创  0：转载 1:原创")
    private Integer pushType;

    @Schema(description = "转载地址")
    private String originalUrl;

    @Schema(description = "发布地址")
    private String address;

    @Schema(description = "文章阅读量")
    private Long readVolume;

    @Schema(description = "收藏数")
    private Long collectVolume;

    @Schema(description = "点赞数")
    private Long likeVolume;

    @Schema(description = "评论数")
    private Long commentVolume;

    @Schema(description = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    @Schema(description = "修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;

    @Schema(description = "是否首页轮播")
    private Long isCarousel;

    @Schema(description = "是否推荐")
    private Integer recomStatus;

    @Schema(description = "标签")
    private String tag;

    @Schema(description = "收藏状态")
    private int collectStatus;

    @Schema(description = "点赞状态")
    private int likeStatus;

    private List<String> checkedTagList;

}
